package com.smedi.ismedi.dangeroussourcemanage.core.application.query;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.smedi.ismedi.dangeroussourcemanage.api.dto.request.DangerSourceListRequest;
import com.smedi.ismedi.dangeroussourcemanage.core.application.command.DangerousSourceListCommand;
import com.smedi.ismedi.dangeroussourcemanage.core.application.command.MobileQueryDangerousSourceListCommand;
import com.smedi.ismedi.dangeroussourcemanage.core.application.command.QueryDangerousSourcePageListCommand;
import com.smedi.ismedi.dangeroussourcemanage.core.application.command.TimeLineCommand;
import com.smedi.ismedi.dangeroussourcemanage.core.application.query.vo.DangerSourceVo;
import com.smedi.ismedi.dangeroussourcemanage.core.application.query.vo.DangerousSourceListVo;
import com.smedi.ismedi.dangeroussourcemanage.core.application.query.vo.DangerousSourceManageDetailQueryVo;

import java.util.List;

/**
 * 危险源库查询服务
 *
 * @author xienannan
 * @date 2021/08/23
 */
public interface DangerousSourceManageQueryService {
    Page<DangerousSourceListVo> postQueryDangerousSourceManagePageList(QueryDangerousSourcePageListCommand queryDangerousSourcePageListCommand);

    List<DangerousSourceListVo> postQueryDangerousSourceManageList(DangerousSourceListCommand dangerousSourceListCommand);

    DangerousSourceManageDetailQueryVo getQueryDangerousSourceManageDetail(long dangerousSourceId);

    Page<DangerousSourceListVo> mobileQueryDangerousSourceManagePageList(MobileQueryDangerousSourceListCommand mobileQueryDangerousSourceListCommand);

    List<DangerSourceVo> getDangerSourceList(DangerSourceListRequest dangerSourceListRequest);

    Integer getDangerSourceCount(DangerSourceListRequest dangerSourceListRequest);

    Integer getDangerSourceCountByTimeLine(TimeLineCommand timeLineCommand);
}

